package com.cloud.tsp.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.api.domain.forward.ResponseData;
import com.cloud.api.domain.job.QueryService;
import com.cloud.api.domain.service.*;
import com.cloud.core.util.R;
import com.cloud.mybatis.domain.TableDataInfo;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.time.LocalDate;

/**
 * <p>
 * 服务站授权信息表 服务类
 * </p>
 *
 * @author haohaibo
 * @since 2025-03-12
 */
public interface IStationServiceBaseInfoService extends IService<StationServiceBaseInfo> {
    TableDataInfo<StationServiceBaseInfo> selectServiceStationList(QueryService para);
    String InsertOrUpdateStationInfo(StationInfo para);
    String InsertOrUpdateStationAuth(StationAuth para);
    ResponseData updateServiceStationAuth(MultipartFile file, LocalDate authorizationStart, LocalDate authorizationEnd, String key) throws IOException;
    ServiceStatistics getServiceStationStatistics();
    void downloadTemplate(HttpServletResponse response) throws IOException;
    void exportData(HttpServletResponse response,QueryService para) throws IOException;


    R<String> downloadAuthorization(QueryAuthorization para);

    R<String> generateCertInfos(CertificateInfos para);
}
